package com.sg.dto.base.framework.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;


/**
 * @desc QueryPositionGradeListReq
 * @使用场景
 */
@Data
public class QueryPositionGradeListReq extends BaseDto implements Serializable {

    /**
     * 职务级别ID
     */
    @ApiModelProperty("职务级别ID")
    private String positionGradeId;

    /**
     * 岗位类型ID
     */
    @ApiModelProperty("岗位类型ID")
    private String stationTypeId;

    /**
     * 职务级别编号
     */
    @ApiModelProperty("职务级别编号")
    private String positionGradeNumber;

    /**
     * 职务级别名称
     */
    @ApiModelProperty("职务级别名称")
    private String positionGradeName;

    /**
     * 是否设置等级范围 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否设置等级范围")
    private String isSetGrade;

    /**
     * 批次ID
     */
    @ApiModelProperty("批次ID")
    private String batchId;

    /**
     * 批次开始时间
     */
    @ApiModelProperty("批次开始时间 ")
    private Date batchStartTime;

    /**
     * 批次结束时间
     */
    @ApiModelProperty("批次结束时间")
    private Date batchEndTime;

    /**
     * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
     */
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;

    /**
     * 是否存档 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否存档")
    private String isArchive;

    /**
     * 存档类型 NOT_ARCHIVE:未归档 TOBE_ARCHIVING:想归档 ARCHIVED:已归档
     */
    @ApiModelProperty("存档类型")
    private String archivngType;

    /**
     * 是否未来 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否未来")
    private String isEditing;

    /**
     * 批次下是否更新 TRUE:是 FALSE:否
     */
    @ApiModelProperty("批次下是否更新")
    private String isUpdate;

    /**
     * 批次下更新状态 NEW:本次新增 UNCHANGED:正常未变 REVISION:本次修订 ARCHIVE:本次存档
     */
    @ApiModelProperty("批次下更新状态")
    private String updateStatus;

    /**
     * 是否作废 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否作废不能为空")
    @ApiModelProperty("是否作废")
    private String isValid;

    /**
     * 创建于空间ID
     */
    @ApiModelProperty("创建于空间ID")
    private String spaceId;

    /**
     * 创建于联盟应用ID
     */
    @ApiModelProperty("创建于联盟应用ID")
    private String appId;


}
   